getDefaultProtocol{
  return new ProtocolDescription("Local");
}
getConfigurationClass{
  return WeldEEMockConfiguration.class;
}
setup{ }
start{ }
deploy{
  ShrinkWrapClassLoader classLoader=new ShrinkWrapClassLoader(archive.getClass().getClassLoader(),archive);
  ContextClassLoaderManager classLoaderManager=new ContextClassLoaderManager(classLoader);
  classLoaderManager.enable();
  TestContainer container=new TestContainer(findArchiveId(archive),findBeansXml(archive),findBeanClasses(archive,classLoader));
  Bootstrap bootstrap=container.getBootstrap();
  contextClassLoaderManagerProducer.set(classLoaderManager);
  container.startContainer();
  testContainerProducer.set(container);
  bootstrapProducer.set(bootstrap);
  weldManagerProducer.set(container.getBeanManager(container.getDeployment().getBeanDeploymentArchives().iterator().next()));
  return new ProtocolMetaData();
}
undeploy{
  TestContainer container=testContainerProducer.get();
  if (container != null) {
    container.stopContainer();
  classLoaderManager.disable();
}
stop{ }
deploy{
}
undeploy{
}
